package com.ts.main.admin.exception;

/**
 * @author lk
 */
@SuppressWarnings("AlibabaEnumConstantsMustHaveComment")
public enum EmError implements CommonError {


  USER_PASSWORD_ERROR(30003, "原密码错误", "用户模块"),
  USER_ADD_PHONE_EXISTED(30002, "手机号已被使用", "用户模块"),
  USER_ADD_IS_EXIST(30001, "账号已存在", "用户模块"),
  USER_ADD_IS_NULL(30000, "账号或用户名不能为空", "用户模块"),
  //    ==================================================================================================================================
  //    20000开始为认证服务错误代码
  //    ==================================================================================================================================
  AUTH_LOGOUT_FAIL(20007, "退出登录失败！", "认证服务"),
  AUTH_API_NOT_PERMISSION(20006, "没有访问该API的权限", "认证服务"),
  AUTH_TOKEN_INVALID(20005, "令牌验证失败", "认证服务"),
  AUTH_TOKEN_EXPIRED(20004, "令牌已过期，请重新登录", "认证服务"),
  AUTH_USER_IS_BLOCK_LOGIN(20003, "您已被禁止登录", "认证服务"),
  AUTH_CODE_ERROR(20002, "登录验证码错误", "认证服务"),
  AUTH_PASSWORD_ERROR(20001, "账号或密码错误", "认证服务"),
  AUTH_USER_IS_NULL(20000, "用户未注册", "认证服务"),

  //    ==================================================================================================================================
  //    10000开始为系统内部错误代码
  //    ==================================================================================================================================
  UNKNOWN_ERROR(10001, "未知异常", "未知服务");

  /**
   * 错误码
   */
  private int errCode;
  /**
   * 错误信息
   */
  private String errMsg;
  /**
   * 服务名
   */
  private String serviceName;

  EmError(int errCode, String errMsg, String serviceName) {
    this.errCode = errCode;
    this.errMsg = errMsg;
    this.serviceName = serviceName;
  }

  @Override
  public int getErrCode() {
    return this.errCode;
  }

  @Override
  public String getErrMsg() {
    return this.errMsg;
  }

  @Override
  public String getServiceName() {
    return this.serviceName;
  }

  @Override
  public CommonError setErrMsg(String errMsg) {
    this.errMsg = errMsg;
    return this;
  }


}
